专利摘要:
サーバーベースのデスクトップ仮想マシンのアーキテクチャーをクライアントマシンに拡張することができる。 一実施例においては、ユーザーデスクトップはクライアントシステムからリモートアクセスされる。1つ以上のサーバーコンピュータを有してもよいサーバーシステムで実行される第1仮想マシンでリモートデスクトップが生成される。第1仮想マシンの実行中、対応する仮想ディスクへの書き込みはデルタディスクファイルつまりリドゥーログに誘導される。仮想ディスクのコピーがクライアントシステムに作られる。ユーザーがデスクトップを「チェックアウト」すると決めると、第1仮想マシンが(もし実行されているならば)停止され、デルタディスクのコピーがクライアントシステムに作られる。クライアントシステムにデルタディスクが存在するや否や、仮想ディスクとデルタディスクを使用して第2仮想マシンがクライアントシステム上で開始されることができ、クライアントシステム上でユーザーデスクトップへのローカルアクセスを提供する。これにより、ユーザーはネットワークに接続しなくともその時にデスクトップにアクセスできる。C
公开号:JP2011513816A
申请号:JP2010547806
申请日:2009-02-20
公开日:2011-04-28
发明作者:エクルストン,マシュー;チャムチャム,ジャド;チョン,ジェレイド,アイ,エル;ハルペリン,ヤロン;フェン,ジ;エム ルロワ,クリスチャン
申请人:ヴイエムウェア インクVMware, Inc.;
IPC主号:G06F9-54
专利说明:

[0001] 本出願は、2008年2月26日に出願された米国仮出願第61/031,613の利益を主張する。上記出願は、ここに参照により援用される。]
技術分野

[0002] コンピュータ仮想化の恩恵は、演算処理のハードウェアプラットフォームのコンピュータ計算の効率と柔軟性を大きく向上させるものとして認識されてきた。例えば、コンピュータ仮想化は、複数の仮想演算処理マシンが共通の演算処理ハードウェアプラットフォームを実行することを可能にする。物理的な演算処理ハードウェアプラットフォームのように、仮想演算処理マシンは、仮想ハードディスクなどの記憶メディア、仮想プロセッサ、及び演算処理環境に伴うその他のシステム要素を有する。例えば、仮想ハードディスクは、仮想マシンのオペレーティングシステム、データ、アプリケーションファイルを記憶することができる。]
背景技術

[0003] サーバーベースの演算処理は、サーバーに対し遠隔に配置されたネットワーク化されたクライアントシステムがサーバーの演算処理リソースにアクセスすることを可能にする。例えば、クライアイントは、RDPやVNCなどのリモートデスクトッププロトコルを使い、デスクトップにリモートアクセスしたり、キーボードやマウス入力などのユーザー入力をリモートシステムに送信することができる。サーバーベースの演算処理は、演算処理リソースの集中管理を容易にする。しかし、欠点は、最適に満たない演算処理体験である。例えば、グラフィックを多用するアプリケーションや、USBデバイスなどのローカルデバイスや、プリンタなどが望まれるように動作しない。更に、ユーザーは、サーバーに記憶されたユーザーデスクトップにアクセスするために、ネットワークに接続した状態を維持しなければならない。]
発明が解決しようとする課題

[0004] サーバーベースの演算処理の代替として、クライアントサイド演算処理がある。クライアントサイド演算処理は、ユーザーが企業ネットワークから離れる事とオフラインモード(ネットワーク又はインターネットに接続していない事)を可能にする。しかしながら、企業管理の視点から言えば、クライアントサイド演算処理は、オペレーティングシステムやアプリケーションのアップデート、セキュリティの実施、ライセンス遵守、情報の保護、様々なポリシーを忠実に守ること、データのバックアップなどのタスクにおいて、望まれない非効率性をもたらす。]
課題を解決するための手段

[0005] 上述した課題は、サーバーベースのデスクトップ仮想マシン構成をクライアントマシンに拡張することにより対処され得る。一実施例においては、ユーザーデスクトップは、クライアントシステムからリモートアクセスされる。リモートデスクトップは、サーバーシステムで動作する第1仮想マシンによって生成される。サーバーシステムは、1つ以上のサーバーコンピュータを含む。第1仮想マシンの実行中、対応する仮想ディスクは、デルタディスクファイルつまりリドゥーログ(redo log)に導かれる。仮想ディスクのコピーが、クライアントシステムに作られる。ユーザーが、デスクトップを「チェックアウト」することを望むとき、第1仮想マシンは(もし動作しているならば)終了し、デルタディスクのコピーがクライアントシステムに作られる。デルタディスクがクライアントシステムに提示されると、仮想ディスクとデルタディスクを使ってクライアントシステムで第2仮想マシンを開始することができ、クライアントシステムにおいてユーザーデスクトップへのローカルアクセスが提供される。これにより、ユーザーは、ネットワークに接続することなく、デスクトップへその時にアクセスすることができる。]
図面の簡単な説明

[0006] 集中管理されたユーザーデスクトップへのアクセスを提供する仮想デスクトップインフラストラクチャ(VDI)システムの簡単な例を示す。
仮想化されたコンピュータシステムの例の論理図である。
図1の仮想デスクトップインフラストラクチャシステムの動作を例示によって示すブロック図である。
図1の仮想デスクトップインフラストラクチャシステムの動作を例示によって示すブロック図である。
図1の仮想デスクトップインフラストラクチャシステムの動作を例示によって示すブロック図である。
図1の仮想デスクトップインフラストラクチャシステムの動作を例示によって示すブロック図である。
ユーザーを自動バックグラウンド同期でリモートデスクトップに接続させる手順の例を示すフローチャートである。
デスクトップチェックアウト手順を実装する方法を例によって示すフローチャートである。] 図1
実施例

[0007] 図1は、集中管理されたユーザーデスクトップへのアクセスを提供する仮想デスクトップインフラストラクチャ(VDI)システム10の簡単な例を示す。「デスクトップ」という用語は、ユーザーがユーザーのアプリケーション、設定、及びデータを開始、対話、及び管理するヒューマンインターフェース環境を意味する。伝統的には、デスクトップは、オペレーティングシステムによってビデオディスプレイに提示され、ユーザーはマウスやキーボードを使ってデスクトップと対話する。全てのアプリケーションやドキュメントなどはデスクトップに表示されてもよく、通常はユーザー入力はユーザーがディスプレイ上に見ることができるアプリケーションによって受け取られる。「デスクトップ」という用語は、物理的なコンピュータシステム、つまり、「物理的なデスクトップ」を意味するためも使われることが知られている。「物理的なデスクトップ」は、「ラップトップ」又は「パームトップ」とは区別される、ユーザーの机の近く又はその上に配置される。しかし、ここでの使用においては、「デスクトップ」という用語そのものは、上述のヒューマンインターフェース環境のみを意味し、物理的なコンピュータシステムは意味しない。コンピュータ仮想化を使い、オペレーティングシステム設定、アプリケーション、アプリケーション設定、及びデータを含むユーザーのコンピュータシステムは、仮想マシンとして、ある物理的なコンピュータから別の物理的なコンピュータに転送又はコピーされてもよい。仮想マシンがこのようにコピーされる時、元の仮想マシンを含む物理的なコンピュータシステムから、又は、コピーを含む物理的なコンピュータシステムから、ユーザーはデスクトップにアクセスすることができる。従って、もはや「デスクトップ」は、特定の物理的なコンピュータシステムに紐づけられない。] 図1
[0008] VDIシステム10は、ネットワーク13を介してVDIクライアントシステム12、14、及び16とデータ通信するVDIサーバーシステム11を有する。ネットワーク13は、どのような形態であってもよく、例えば、ローカルエリアネットワーク(LAN)又はインターネットのようなプライベートアクセス又は公衆アクセス可能なワイドエリアネットワークであってもよい。なお、図1は、ファイヤーウォール、コネクションブローカ、ロードバランサ、バックエンドストレージネットワーク、データベースなどのその他の構成を含んでもよい典型的なVDIネットワークサーバーシステム11の簡単な図である。それぞれのクライアントシステム12、14、16は、ユーザーがデスクトップと対話するためのユーザーインターフェース40(1つのみが示される)を含んでもよい。] 図1
[0009] 図2は、仮想化されたコンピュータシステム20の例の論理図である。下記に詳説されるように、VDIサーバーシステム11、VDIクライアントシステム12、14、及び16は、図2を参照して説明される仮想化ソフトウェアを含んでもよい。仮想化されたコンピュータシステム20は、物理的なハードウェアプラットフォーム22、ハードウェアプラットフォーム22で動作する仮想化ソフトウェア80、及び仮想化ソフトウェア80によってハードウェアプラットフォーム22で動作する1つ以上の仮想マシン70を含む。従って、仮想化ソフトウェア80は、ハードウェアプラットフォーム22の物理的なハードウェアと仮想マシン70で動作するゲストシステムソフトウェア72との間に論理的に配置される。] 図2
[0010] ハードウェアプラットフォーム22は、1つ以上のシステムバス28を有する演算処理システム。システムバスは、様々なハードウェアプラットフォームコンポーネントが互いにデータ通信できるようにする。例えば、1つ以上のプロセッサ24は、システムバス28を使って、メモリー26とデータ通信するように構成される。メモリー26は、リードオンリーメモリー(ROM)、ランダムアクセスメモリ(RAM)、キャッシュメモリー、及び様々なレジスタメモリーを含むメモリーのシステムを有してもよい。不揮発データストレージ30は、ソフトウェア又はデータの記憶のための、1つ以上のディスクドライブ又は他の機械による読み込みが可能な媒体又は大容量データ記憶システムを含んでもよい。メモリー26及び/又は不揮発データストレージ30は、仮想化ソフトウェア80及び仮想マシン70で動作するゲストシステムソフトウェア72を記憶してもよい。ユーザーインターフェース40は、(図示されない)キーボードコントローラ、(図示されない)マウスコントローラ、(図示されない)ビデオコントローラ、(図示されない)オーディオコントローラを含むように提供されてもよく、それぞれ対応する(図示されない)ユーザーデバイスに接続されてもよい。サーバーコンピュータシステムにおいて典型的に見られるように、VDIサーバーシステム11(図1)においては、ユーザーインターフェース及びデバイスは、ハードウェアプラットフォーム22に含まれていても含まれていなくてもよく、又は接続されていても接続されていなくてもよい。代わりに、データセンタ管理の分野で一般的に知られているように、ユーザー対話は遠隔から行われてもよい。ネットワークインターフェース50は、ネットワーク13のようなネットワークを介してデータ通信を可能にする(図1)。ネットワークインターフェース50は、TCP/IPなどのネットワークプロトコルを使って通信を容易にする。] 図1
[0011] コンピュータ仮想化の分野では、仮想化ソフトウェア80はよく知られている。仮想化ソフトウェア80は、システムリソース管理及び仮想マシンエミュレーションを行う。仮想マシンエミュレーションは、仮想マシンモニター(VMM)コンポーネントによって行われてもよい。典型的な実装においては、それぞれの仮想マシン70(1つのみが示される)を対応するVMMインスタンスを有する。実装により、仮想化ソフトウェア80は、ホストされていなくてされていてもよい。ホストされていない仮想化ソフトウェアは、一般的に、システムリソースを管理する特化された仮想化カーネルに依存する。一方、ホストされている仮想化ソフトウェアは、商品としてのオペレーティングシステム、つまり、システムリソースを管理するWindows(登録商標)やLinux(登録商標)などの「ホストオペレーティングシステム」に依存する。ホストされた仮想化システムにおいては、ホストオペレーティングシステムは、仮想化ソフトウェア80の一部分と考えられてもよい。]
[0012] 仮想マシン70は、概念的には、(仮想化ソフトウェア80によってエミュレートされる)仮想ハードウェアデバイスの状態及びゲストシステムソフトウェア72の内容を含む。図2に示されるように、ゲストシステムソフトウェア72は、ゲストオペレーティングシステム74及びゲストアプリケーション78を含む。ゲストオペレーティングシステム74は、Windows(登録商標)やGNU/Linux(登録商標)などの商品としてのオペレーティングシステムであってもよい。仮想化ソフトウェア80は、ローカルユーザーインターフェース40又はリモートデスクトップクライアントへユーザーインターフェース出力を導くことを含め、仮想マシン70との入出力を管理する。] 図2
[0013] 図3A及び図3Bは、ユーザーデスクトップへのリモート(又は集中)アクセスとローカルアクセスの両方を有し、1ユーザーがデスクトップにリモートアクセス又はローカルアクセスすることを可能にする拡張可能なVDIシステム100を示す簡単なブロック図を示す。拡張可能な VDIシステム100は、サーバーシステム110とクライアントシステム120を含む。仮想マシン(VM)118はサーバーシステム110で実行され、ユーザーによってクライアントシステム120経由でアクセスされることができる。VM118は、図2を参照して上述の全てのユーザーアプリケーションとデータを含み、仮想化ソフトウェア117を使って実行される。一実施例においては、仮想化ソフトウェア117は、ホストされていない仮想化ソフトウェアを有する。更に、たった1つのVM118がサーバー110で実行されるとして示されているが、任意の数のVMが実行されてもよく、それぞれは1人以上の対応するユーザーに関連づけられてもよい。] 図2 図3A 図3B
[0014] 仮想化ソフトウェア117は、ユーザーI/Oをリモートデスクトップホスト115に導く。リモートデスクトップホスト115は、ユーザーのグラフィックとサウンドをリモートデスクトップクライアント125に送信する。同様に、リモートデスクトップクライアント125は、キーボードやマウス入力などのユーザーの入力をリモートデスクトップホスト115に送信する。リモートデスクトップクライアント125は、様々なユーザーI/Oデバイスを有してもよいユーザーインターフェース124経由で、ユーザーのデスクトップをユーザーに示す。]
[0015] クライアントシステム120は、リモートデスクトップクライアント125に加えて、仮想マシン128及び仮想化ソフトウェア127を含む。仮想マシン128は仮想ディスク132にアクセスできる。仮想ディスク132は、クライアントシステム 120に接続した物理ディスク130上の1つ以上のファイルに存在するディスクイメージである。仮想ディスク132は、仮想化ソフトウェア 127により維持される。一実施例においては、仮想化ソフトウェア127は、ホストされた仮想化ソフトウェアを有する。ホストされた仮想化ソフトウェアは、上述したようにクライアントのホストオペレーティングシステムと連動して実行される。仮想ディスク132は、最初に仮想ディスク142からコピーすることができる(又は、逆に仮想ディスク142は、最初に仮想ディスク132からコピーすることができる)。これにより、ある特定の状態においては、仮想ディスク132及び142は、同一、又は同一ではないが論理的に同等である。論理的に同等とは、それぞれの仮想ディスクが同じファイルシステム及びデータファイルを有し、それらは同一のファイルシステム構造において論理的に関連しているが、実際のディスクセクタは同じ順番とはなっていないかもしれないことを意味する。2つの同一のディスクも、論理的に同等である。]
[0016] サーバーシステム110は、サーバーシステム110にアクセス可能な物理ディスク140を含んでいるか通信可能である。物理ディスク40は、対応する仮想マシンのディスクイメージファイルであり、ユーザー仮想ディスクに記憶するために仮想化ソフトウェア117によって利用される。ユーザーがVM118で作業する時、VM118は書き込みを仮想ディスク142に発行してもよい。仮想ディスク142は、物理ディスク140上の1つ以上のファイルとして存在している。しかし、変更を直接仮想ディスク142に書き込む代わりに、仮想化ソフトウェア117は、書き込みをデルタディスク144にリダイレクトするように構成されてもよい。デルタディスク144は、リドゥーログ又はその他の「差分」ファイルを有してもよい。本質的に、デルタディスク144は、実際に仮想ディスク142を変更することなく、仮想ディスク142への変更のリストを保持する。デルタディスクは、仮想化の技術において知られており、例えば、米国特許第7,356,679号に更なる詳細が記載されている。仮想マシン118が読み込みを発行する時、仮想化ソフトウェア117は、デルタディスク144にアクセスし、そこにデータがあるかどうか判断する。もし、そこにデータが無いならば、仮想マシン118は、仮想ディスク142、つまり、デルタディスク144の親となるディスクイメージにアクセスする。そして、あたかも単純に物理デバイスのディスク読み込みが発生したかのように、仮想化ソフトウェア117は、データを仮想マシン118に届ける。]
[0017] オフラインで(例えば、サーバーシステム110にアクセスせずに)アクセス可能になるように、ユーザーが仮想マシンを「チェックアウト」すると決定すると、ユーザーは、この要望を管理ソフトウェア(図示されないが、詳細は下記に説明される)に伝えてもよい。この時、仮想マシン118は「電源オフ」され、デルタディスク144がユーザーの物理ディスク130にコピーされ、ユーザーの物理ディスク130にデルタディスク134が作られる。このダウンロードが完了し検証されると、デルタディスク144を構成する書き込みが仮想ディスク142にマージされ、デルタディスク134も同様に仮想ディスク132にマージされ、仮想ディスク132及び仮想ディスク142が論理的に同等な状態に維持されるが、ユーザーによって残された最新の状態を反映するようにアップデートされる。]
[0018] 一実施例においては、仮想マシン118を電源オフする代わりに、ユーザーは単純にサスペンドされてもよい。この場合、VM状態136も仮想化ソフトウェア117からダウンロードされ、仮想化ソフトウェア117が仮想マシン118の状態を維持する。]
[0019] 図3Bは、拡張可能な VDIシステム100を示し、ユーザーが仮想マシン128をローカルで実行することによりオフラインでデスクトップにアクセスしているところを示す。この場合、リモートデスクトップクライアント125を使わずに、仮想化ソフトウェア127はクライアントシステム120上で仮想マシン128を実行する。従って、ユーザーは、ネットワークから切断されていてもよく、オフラインで作業してもよい。仮想化ソフトウェア127は、直接に仮想ディスク132を変更しない。代わりに、仮想化ソフトウェア127は、図3Aでデルタディスク144に関して説明したように、ユーザーが仮想ディスク132に対して行った全ての変更を含むデルタディスク134を作る。] 図3A 図3B
[0020] ある時において、デスクトップをサーバーシステム110に「チェックイン」したい又はする必要があるかもしれない。この時、仮想マシン128は、「電源オフ」され、仮想化ソフトウェア127はサーバー110に接続し、デルタディスク134をサーバーのデータストレージ140にコピーして、デルタディスク144を作る。一実施例においては、仮想マシンは、電源オフされる代わりに、サスペンドされてもよく、VM状態146はサーバーシステム10にアップロードされる。デルタディスク134又はデルタディスク134プラス状態146のコピーの後、デルタディスク134、144は、仮想ディスク132、142にそれぞれマージされる。「マージ」は、それぞれのデルタディスクに格納されるディスク書き込みが仮想ディスクファイル132、142にそれぞれ書き込まれることを意味する。このチェックイン手順の後、仮想ディスク132、142それぞれは、同一又は少なくとも論理的に同等である。これにより、ユーザーは、仮想マシン128の離れたときの状態の仮想マシン118を使って、演算処理を開始してもよい。]
[0021] 今から更に詳細に説明されるが、上述したチェックイン、チェックアウト機能の基本的な動作について、様々な向上や最適化が行われることができる。]
[0022] 図3Cは、拡張可能な VDIシステム100のより詳細な図である。サーバーシステム110に接続した物理ディスク140に存在する1つ以上のファイル141によって、ユーザーデスクトップが定義される。ファイル141は、ポリシー149、仮想ディスク142、デルタディスク144、及びVM状態146のファイルを含む。ポリシーは、データベースを使う、及び/又は、仮想ディスク142にメタデータとして埋め込まれているか関連付けられている設定ファイルによって、記憶することができる。追加的なデスクトップファイル148は、対応するユーザー又はユーザーのグループによってアクセス可能な追加的なデスクトップを定義するために、提供されてもよい。] 図3C
[0023] 図3Cに示されるように、クライアントシステム120は、サーバーシステム110の管理サーバー112と通信するVDIクライアント122を含む。管理サーバー112は、クライアント120のユーザーを認証し、ユーザーデスクトップへのアクセスの要求を処理し、ポリシー149を実施する。ポリシー149は、特定のデスクトップが、誰に対してどのような状況のもとに提供可能となってもよいかを定義する。例えば、ユーザーの場所又はグループ又は要求されるサービスに基づいたポリシーであるグローバルポリシーも設定されているかもしれなくとも、ポリシー149は要求を行うユーザーに固有のものであってもよい。] 図3C
[0024] 一実施例においては、管理サーバー112は、上述のように複数のサーバーマシンを含んでもよいサーバーシステム110のその他のコンポーネント及びクライアントシステム120にネットワークを介して通信する別個の物理的なコンピュータシステムにインストールされるサーバーアプリケーションである。この例においては、ユーザーがクライアントシステム120のVDIクライアント125と対話する時、ユーザーと関連付けられたデスクトップのためにサーバー110にネットワーク13を介して要求が送られる。上述したように、サーバーシステム110は、それぞれが1つ以上のユーザーに対応する複数のVM(1つのみが示される)を含んでもよい。管理サーバー112は、ユーザーの要求を受信し、ユーザー及び/又は要求を認証し、VM118を必要に応じて開始又は再開し、VDIクライアント125をリモートデスクトップサーバー115に接続する。]
[0025] VDIクライアント122は、プレゼンテーションレイヤー124を含む。プレゼンテーションレイヤー124は、ユーザーがVDIクライアント122つまりサーバーシステム110と対話するグラフィカルユーザーインターフェースを提供する。一実施例においては、VDIクライアント122は、インターネットブラウザの中又はインターネットブラウザと連動して実行される。]
[0026] ある時において、図3A及び図3Bを参照して上述されたように、ユーザーはデスクトップに「チェックイン」又は「チェックアウト」したいかもしれない。この場合、仮想ディスク又はデルタディスクは、(ユーザーがデスクトップに「チェックイン」しているのかそれとも「チェックアウト」しているかによって)クライアントシステム120からサーバーシステム110にコピーされるか、又は逆にサーバーシステム110からクライアントシステム 120にコピーされる。もし、ユーザーが仮想ディスクのローカルコピーを有しないコンピュータにデスクトップをチェックアウトするならば、デルタディスク144は、サーバーシステムの仮想ディスク142にマージされてもよく、仮想ディスク全体は、ユーザーのローカルクライアントシステム120にコピーされる。仮想ディスクが極めて大きくなり得るため、この初期のチェックアウトは、大量のデータと潜在的に制限されたバンド帯域のために、極めて時間のかかるものである。次回のチェックイン及びチェックアウト手順中に送信されるデルタディスクでさえ、ユーザーアクティビティによっては極めて大きくなり得る。例えば、新しいアプリケーションはインストールされてもよく、又は、既存のアプリケーション又はオペレーティングシステムのコンポーネントは、広範囲にアップデート又はパッチを当てられてもよい。] 図3A 図3B
[0027] 一実施例においては、ユーザーデスクトップのチェックイン及びチェックアウトに要求される時間は、例えば、ユーザーが仮想マシンと対話している際にユーザーアクティビティや仮想マシンの動作に干渉せずに、データをクライアントシステム120とサーバーシステム110の間でバックグラウンドで送信することにより、減らすことができる。これは、バックグランド同期又はバックグラウンドデータ転送と呼ばれてもよい。バックグランドデータ転送は、単にVM118へのアクセスが許可されただけのクライアントシステム120のユーザーに応答して、自動的に行われてもよい。このように、仮想ディスク142の正確で最新の描写は、ユーザーの演算処理経験を顕著なほど減ずることなく、クライアントシステム120から又はクライアントシステム120へ転送されてもよい。ユーザーが新しいクライアントシステム110からリモート作業を始める時、仮想ディスク142の完全なコピーがクライアントシステム120の仮想ディスク132として準備完了になるまで、仮想ディスク142はバックグラウンドで転送されてもよい。その後、仮想ディスク142への変更はクライアントシステム120へバックグラウンドで転送され、デルタディスク132のビルドが開始される。ユーザーがデスクトップをチェックアウトすると決定すると、少なくとも仮想ディスク142への変更の大部分は、クライアントシステム120へ既に転送されているはずである。同様に、ユーザーがデスクトップをチェックインすると決定すると、少なくとも仮想ディスク132への変更の大部分は、クライアントシステム110へ既に転送されているはずである。]
[0028] ユーザーが、デスクトップにおいて、セッションからログオフすると決めると、デルタディスク144とデルタディスク134の残存する差分は、最終的な変更を送信することにより解決される。クライアントシステム120とサーバーシステム110の通信の完了の後、デルタディスク144の表現される変更は、仮想ディスク142に書き込みされてもよい。一実施例においては、仮想ディスク142を更新する最中にVM118の安定状態を確実にするためにVM118の動作が終了させられた後に、これが起こる。VM118の動作の終了は、VM118の電源オフ又はVM118の動作のサスペンドを含んでもよい。VMの電源オフは、典型的には、VMが実行されるゲストオペレーティングシステムの電源オフ手順を実行することを含む。この手順においては、プロセスは終了し、現在メモリーに存在する一時的又はキャッシュされたデータがディスクに書き込まれる。VMが電源オフされる時、状態情報はほとんど存在しないか全く存在しない。一方、サスペンド動作は、実行の停止と、VM状態ファイル146への書き込みによって仮想マシンの状態を保存することを含む。]
[0029] デルタディスク144が仮想ディスク142にマージされた後、デルタディスク144は削除されてもよく、削除用にマークされてもよく、又はもはや有効ではないとして特定されてもよい。仮想ディスク132と仮想ディスク142の一貫性を保ってそれぞれのディスクへの変更を同期と呼ぶ。上述の仮想マシン118の動作の停止を参照して上述されたのと同様にしてVM128のローカル実行が停止された後、このようにしてユーザーの仮想マシンは同期されてもよい。]
[0030] 管理サーバー112は、仮想マシン118と同期されていない仮想マシン118に対応する仮想マシン128が無いということが確実になるまで、仮想マシン118の動作を排除するポリシーを確立又は実施してよい。つまり、もし、ユーザーがデスクトップとオフラインで対話した場合、デルタディスク134を作成させ、管理サーバー112は、デルタディスク134に表わされる変更がサーバーシステム110に送信され仮想ディスク142にマージされるまで、VM118の使用を中止してもよい。]
[0031] ユーザーデスクトップに対応する情報の同期を維持することは、ユーザーデスクトップでポリシー管理を実行することを含んでもよい。ポリシー149の例としては、ユーザーのデスクトップのコピーがクライアントシステム120に転送されてよいかどうか又はどのような条件で転送されてよいかについての情報、サーバーシステム110にチェックインされるまでにデスクトップがどれだけの時間チェックアウトされていたか、仮想マシン128/118の使用の制限、等が挙げられる。仮想化ソフトウェア127及び/又はVDIクライアント122は、例えば、仮想ディスク132や関連付けられたデルタディスクに記憶されたデータに許可なくアクセスすることを防ぐ暗号化を使用するなどの、確立されたポリシーを実施するように構成されていてもよい。]
[0032] 一実施例においては、ユーザーがVDIクライアント122を開始すると、ユーザーは認証情報を要求するログインスクリーンを提示されてもよい。そして、VDIクライアントは、認証情報をリモートデスクトップサーバー112などのサーバーシステム110に通信する。リモートデスクトップサーバー115は、ユーザーの認証を確認し、ユーザーの認証情報に対応する既存のデスクトップの要求を管理サーバー112に送る。管理サーバー112は、リモートデスクトップサーバー115から要求を受信し、提供されたユーザー識別子をマッピングテーブル114と比較する。マッピングテーブル114は、ユーザー識別子をサーバーシステム110の1つ以上の仮想マシンと関連付ける。管理サーバー112は、ユーザー識別子に関連付けられた仮想マシンを特定した後、管理サーバー112は、対応するデスクトップへのリモートユーザーアクセスのために接続情報を提供するか、又はVDIクライアント110とリモートデスクトップ サーバー115の間の接続を容易にする。]
[0033] 別の実施例では、サーバーシステム110に送信されるユーザー要求は、ローカルデスクトップ状態情報を含んでもよい。ローカル状態情報は、リモートデスクトップサーバー115からの問い合わせに応答して要求とは別に提供されてもよい。ローカル状態情報は、ユーザーのローカルクライアントシステム120とサーバーシステム110の差分を特定するのを助ける情報を含んでもよい。例えば、ローカル状態情報は、ユーザーがオフラインでデスクトップにアクセスしてデルタディスク134が作られたかどうか、を含んでもよい。もし、デルタディスク134があるならば、管理サーバー112は、仮想マシン118へのアクセスを許可する前に、差分の送信をバックグラウンドで開始する。もし、送信時間が長いと予測されるならば、ユーザーは、バックグラウンド同期の間に、ローカルVM128に即座に接続されてもよい。もし、デルタディスク134が無く、デルタディスク144が存在するならば、VM118への接続が、付随する自動バックグラウンド同期とともに、許可されてもよい。]
[0034] 一実施例においては、バックグラウンドデータ転送は、クライアントシステム120がサーバーシステム110にアクセスしている間に自動的に発生する定期的な問い合わせへ応答して発生してもよい。別の実施例においては、バックグラウンドデータ転送は、クライアントシステム 120のユーザーの要求によってのみ発生してもよい。例えば、ユーザーは、オフラインになる予測において、ローカルクライアントシステム110をサーバーシステム110に同期することを要求してもよい。ほとんどオフラインにならないユーザーにとっては、この特徴の使用は、ネットワーク資源の負荷を顕著に減らすこととなるかもしれない。ポリシー149は、継続的、定期的、又はユーザーによって開始される同期を要求、許可(例えば、ユーザーに決定させる)、又は防止してもよい。]
[0035] 図3Dに例示によって示される実施例においては、ユーザーデータ及びシステムデータは、別の仮想ドライブに保持される。この実施例においては、転送されるデータの量は、ユーザーデータだけをデルタユーザーデータディスク135又は145に書き込むことにより、更に減らせるかもしれない(ユーザーがデスクトップにローカルからアクセスしているか、リモートからアクセスしているかによる)。例えば、サーバーシステム110のユーザーデスクトップのための情報は、物理ディスク150上のディスクイメージファイルとして存在してもよい、システムディスク152に記憶されるシステム情報として分類されてもよく、ユーザーデータは、仮想ユーザーデータディスク(UDD)143に記憶されてもよい。同様に、それらの2つのディスクへの変更は、2つの別個のデルタディスク(つまりデルタシステムディスク144とデルタUDDディスク145)に記憶されてもよい。] 図3D
[0036] 一実施例においては、システム情報は、アプリケーション情報78とゲストシステムソフトウェア72を含む(図2)。一方、ユーザーデータは、ドキュメント、設定、ユーザー固有のプロパティ等を含む。Windows(登録商標)、OSX(登録商標)、及びGnu−Linux(登録商標)などのほとんどのオペレーティングシステムは、別のディスク上のユーザーデータやシステムを維持する設備を含む。システムデータとユーザーデータの両方の個別のデルタイメージを作るための仮想化を使用して、管理サーバー112は、データの転送を仮想UDD143に記憶されているユーザー情報のみに制限するように構成されてもよい。この場合、システムに行われた(従って、デルタシステムディスク144に書き込まれた)どのような変更も無視され、従って、この情報が転送されないため、システムディスク152は、ユーザーのデスクトップのそれぞれのチェックイン又はチェックアウトをもって、知られている良い状態に戻る。更に、クライアントシステム112及びサーバーシステム110の間で転送される情報の量が、ユーザーデータのみに減らされてもよい。] 図2
[0037] 一実施例においては、仮想マシンの動作の最中に別個のデルタシステムディスク144に保持された、システムディスク152への変更は、そのユーザーに発生したどのようなポリシーに従ってもよい。即ち、それらは、破棄されてもよく、又は、システムデータ、オペレーティングシステム、及びアプリケーションを含む仮想ディスクにマージされて戻されてもよい。もし、デルタシステムディスク144が破棄されるならば、システムディスク152は、どのような特定のユーザーセッションの最中にユーザーがシステムに加えたどのような変更にも関わらず、知られている良い状態で持続するということにおいて、「持続的システムディスク」であると考えられてもよい。]
[0038] 例えば、オペレーティングシステム又はアプリケーションがアップデートされるか、又は製造者が新しいリリースを発行する時などに、システムディスクへの変更は、パッチファイル154にパッケージ化されてもよい。それらの変更は、現在のシステムディスクとアップデートされたシステムディスクの差分を定義するパッチファイル154を作ることにより、システムディスク152に適用されてもよい。パッチファイルは、パッチを適用されたシステムディスクを作り、またクライアントシステムのシステムディスク132の効率的なパッチ適用のためにクライアントシステム 120へ送信されるために、システムディスク152に適用されてもよい。]
[0039] ここに説明される他の実施例と共存し得る他の実施例において、削除されたファイルと関連付けられるセクターを特定するために、ファイルシステム情報が分析される。そして、転送されるデータの量を更に減らすためにデルタディスクイメージを転送する時に、それらのセクターは省略されてもよい。分析と省略はデルタディスクの転送の時に起こることがあり、又は分析と省略は別個のステップとして実行されることがあり、デルタディスクを送信前に事前処理してもよい。この場合、仮想ディスクのコピーは同一でなくてもよいが、論理的に同等である。]
[0040] 図4は、ユーザーをリモートデスクトップに自動バックグラウンド同期で接続する手順の例を示すフローチャート200である。スタートブロック202に示されるように手順は開始し、手順はオペレーション204まで進み、クライアントシステム120のユーザーの認証情報に対応するデスクトップにアクセスするために要求はサーバーシステム120によって受信される(図3A〜図3D)。この要求の受信に応答して、手順はオペレーション206まで進み、サーバーシステム110がユーザー認証を確認する。もし認証が無効であるならば、手順はオペレーション208に進み、アクセスは拒否され、手順は終了する。もし、認証が有効であるならば、手順はオペレーション210に進み、ユーザーはユーザー識別子に対応するデスクトップに接続する。ユーザーをサーバーシステムで実行される仮想マシンのデスクトップに接続した後、手順はオペレーション212に進み、サーバーシステム110は、クライアントシステム120がユーザーのデスクトップに対応する仮想ディスクの正しいコピーを有するかどうか判断する。もし、有していなければ、手順はオペレーション214に進み、仮想ディスク142はバックグラウンドでクライアントシステム120に送信される。バックグラウンドとは、即ち、ユーザーがサーバーシステムの仮想マシン118にアクセス・対話している最中である。このオペレーションは、クライアントシステム120が対応するデスクトップのための仮想ディスクの完全な正しいコピーを提供されるまで続く。] 図3A 図3B 図3C 図3D 図4
[0041] もし、オペレーション212で、クライアントシステムが仮想ディスクの正しいコピーを有すると判断されたならば、手順はオペレーション216に進む。以前に述べたように、サーバーシステムの仮想マシンとのユーザー対話の最中に、仮想ディスクへの変更は、デルタディスクに書き込まれる。オペレーション216において、サーバーシステム110は、クライアントシステムがデルタディスクイメージの最新のコピーを有しているかどうか判断する。もし、有していなければ、手順はオペレーション218まで進み、サーバーシステムのデルタディスクがユーザーのクライアントシステムにコピーされる。ユーザーが仮想マシンと対話し、従って仮想ディスクへの変更を発生させる限り、この手順は発生する。ある時において、ユーザーは、サーバーシステムで実行される仮想マシンからログオフ、仮想マシンを電源オフ又はサスペンドしてもよい。この時、あらゆる残存する変更がクライアントシステムにコピーされる。そして、手順は、完了ブロック220で示されるように終了する。]
[0042] 一実施例においては、バックグラウンド同期は、クライアントシステム120及びサーバーシステム110の間の通信セッションの間いつでも開始されてもよい。バックグラウンド同期は、(例えば、管理者によって設定されるポリシーに従って)自動的又はユーザーの要求で発生してもよい。]
[0043] 例えば、要求又はポリシーは、ユーザーのクライアントシステムは定期的にアップデートされることを指定してもよい。この場合、サーバーシステム110は、最新のアップデートから指定された時間が経過したかどうか判断する。厳しい時間管理の代わりに、アップデート時間を特定する他の手段が実装されてもよい事はもちろんである。例えば、時計が経過した時間を計測することができ、又は、ユーザーがアイドル状態つまり一定時間システムとの対話が無い状態になるまでシステムが待機してもよい。もしクライアントシステムが最新の状態ではなく、サーバーシステム110の仮想ディスクの現在の状態つまりデルタディスク144(図3A〜図3D)が存在するかどうかによって、クライアントシステム120と協調してシステム110は仮想ディスク142及び/又は仮想ディスク142への変更を含むデルタディスク144の送信を開始する。] 図3A 図3B 図3C 図3D
[0044] 一実施例においては、デルタディスク144への新しい変更は、VM118が実行されている時に、デルタディスク144に追加され、定期的にユーザーシステム120に送信される。サーバーシステム110は、デルタディスクのどれだけがクライアントシステム120に転送されたかについて経過を追い、それぞれのアップデートインターバルにおいて追加された部分だけが送信されるようにする。]
[0045] 別の実施例では、それぞれのアップデートインターバルにおいて、現在のデルタディスクがクローズされ、新しいデルタディスクが作られる。新しい変更が新しいデルタディスクに書き込まれる間に、前回のデルタディスクに含まれる情報への変更を含む現在のデルタディスクが送信される。このようにして、一連の連鎖したスナップショットが作られクライアントシステム120に送信され、クライアントシステム120は一連の連鎖したスナップショットを再構成又はマージして1つのデルタディスクにするか直接仮想ディスクにすることができる。一実施例においては、クライアントシステム110への送信の前に、それぞれのデルタディスクは、スキャンされるか、及び/又はウイルス等のマルウェア(malware)の除去がなされる。このスキャンは、目立たないようにバックグラウンドで実行されてもよい。]
[0046] 図5は、デスクトップチェックアウト手順を実施する方法を例示によって表わすフローチャート250を示す。手順は、スタートブロック252で開始し、オペレーション254へ進み、サーバーシステムはアクセスを要求するユーザーを認証する。実装によっては、ユーザーは、この時にリモートデスクトップに即時に接続してもよく接続しなくてもよい。手順は、オペレーション256に進み、サーバーシステムはユーザーからの要求を受信し、デスクトップをチェックアウトする。そして、手順は、オペレーション258に進み、サーバーシステムは、ポリシー及びユーザーパミッションがユーザーのデスクトップをユーザーにチェックアウトすることを許しているかどうか判断する。もし、そうでなければ、手順はオペレーション260に進み、現在のところユーザーがデスクトップをチェックアウトする権限がない旨のメッセージがクライアントシステムに送信される。そして、手順は、終了ブロック274で示されるように終了する。] 図5
[0047] もし、オペレーション258において、ユーザーが本当にデスクトップをチェックアウトするパミッションを有すると判断されると、手順はオペレーション262に進み、ユーザーのデスクトップが例えば異なるクライアントシステムに既にチェックアウトされそれ以後チェックインされていないかどうかが判断される。例えば、仮想ディスクイメージを含むファイルの中に又はそのファイルのステータスフィールド、メタデータフィールド、又はサブセクション又はユーザーデータベースに、ユーザーデスクトップ状態は保持されてもよい。もし、ユーザーのデスクトップが現在チェックアウトされているならば、手順はオペレーション260に進み、サーバーシステム120はチェックアウトアクセス拒否メッセージをクライアントシステム12に送信する。これにより、同時にユーザーのデスクトップの1つのコピーのみがチェックアウトされることを確実にする。一実施例においては、仮想マシンの「枝分かれ」と同期の喪失を招く恐れがある、デスクトップが「チェックアウト」状態でのデスクトップへのリモートアクセスは、ユーザーができないようになる。もし、オペレーション262において、デスクトップが既に現在チェックアウトされていないと判断されると、手順はオペレーション264に進み、もし実行中ならば、ユーザーの仮想マシンは停止させられる。仮想マシンの停止は、電源オフ、仮想マシンのサスペンド、及び状態をディスクに保存することを含んでもよい。]
[0048] そして、手順は、オペレーション266に進み、クライアントシステムは、クライアントシステムがシステムディスクの現在のコピー及びサーバーシステムに存在するかもしれないデルタディスクを有するかどうか判断するように問い合わせを受ける。もし、有しなければ、手順はオペレーション268に進み、仮想ディスク及びデルタイメージが必要に応じてコピー又はアップデートされる。そして、手順はオペレーション270に進む。もし、オペレーション266において、クライアントシステムがデルタディスク及び仮想ディスクの現在のコピーを既に有すると判断されるなら、手順はオペレーション270に直接進む。]
[0049] オペレーション270において、ユーザー及びメタデータがアップデートされ、現在のユーザーのデスクトップの「チェックアウト」状態を反映する。手順は、オペレーション272に進み、ユーザーは、ローカルクライアントシステム上のローカル仮想マシンで実行されるデスクトップへのアクセスを許可される。そして、手順は、終了ブロック274で示されるように終了する。]
[0050] 一実施例においては、デスクトップがクライアントシステムにチェックアウトされていても、ユーザーはデスクトップにリモートアクセスすることを許可されてもよい。デスクトップはチェックアウトされた状態かもしれないが、これは、クライアントシステム120のユーザーがデスクトップにリモートアクセスするためにサーバーシステム110のリソースを使うことを妨げるものではない。例えば、クライアントシステム120は、ハードドライブの故障又はウイルス/マルウェアによる感染などのシステム障害を経験するかもしれない。この場合、ユーザーは、デスクトップをサーバーシステムにチェックインしていないにも関わらず、サーバーシステム110の仮想マシンに対応するローカル仮想マシンアクセスを破棄することを選んでもよい。又は、ユーザーは、サーバーシステムへのあらゆる変更が失われるという理解をした上で、サーバーシステムのデスクトップにアクセスすることを許されてもよい。例えば、もし、ユーザーがクライアントシステムにアクセスできない場合、即ち、ユーザーが例えばファイルを読んだり電子メールにアクセスしたり会社のイントラネットサイトにアクセスしたりするためにコンピュータから遠くにいるけれどもデスクトップにアクセスする必要がある場合であっても、ユーザーは、新しく保存されたデータとの一貫性の無い古いバージョンではあるもののデスクトップにリモートアクセスをすることができる。]
[0051] 別の実施例では、システムは、自動的に又はユーザー要求に基づいて、データストレージ140、即ちデルタディスク144又は145(図3A〜図3D)に含まれる情報についてウイルス/マルウェアスキャンを行ってもよい。ウイルス/マルウェアスキャンの結果は、システムにログされてもく、及び/又はクライアントシステム120に提供されてもよく、又は(図示されない)結果ファイルに記録されてもよい。同様に、クライアントシステム120のユーザーは、ローカルディスク134のウイルス/マルウェアスキャンを実施するために、データストレージ上のローカルデルタディスクのコピーを作ることによりサーバーシステム110を使ってもよい。ウイルス/マルウェアスキャンが完了した後、ローカルデルタディスクのコピーは削除されてもよく、又は仮想ディスク142にマージされてもよい。] 図3A 図3B 図3C 図3D
[0052] ここに記載される様々な実施例は、コンピュータシステムに記憶されるデータを含むコンピュータに実装される様々な動作を採用してもよい。例えば、これらの動作は、物理的な数量の物理的な操作を必要としてもよく、必ずではないが通常は、それらの数量は電気的又は磁気信号の形態であってよく、それら又はそれらの表現は、記憶、転送、合体、比較、又は操作されることができる。更に、それらの操作は、しばしば、作る、特定する、判断する、又は比較するなどの単語で表わされる。ここで記載される、発明の1つ以上の実施例の部分を形成するあらゆる動作は、有益な機械動作であってもよい。更に、発明の1つ以上の実施例は、これらの動作を行う装置にも関する。装置は、特定の要求された目的のために特別に構成されてもよく、又は、装置は、コンピュータに記憶されるコンピュータプログラムによって選択的に作動させられるか設定される汎用コンピュータであってもよい。特に、様々な汎用機械は、ここの教示に従って書かれるコンピュータプログラムとともに使用されてもよく、又は、様々な汎用機械は、要求される動作を行うより特化した装置を構成するために更に便利であってもよい。]
[0053] ここに記載される様々な実施例は、ハンドヘルドデバイス、マイクロプロセッサーシステム、マイクロプロセッサーベース又はプログラム可能な民生電子機器、ミニコンピュータ、メインフレームコンピュータ等を含む他のコンピュータシステム構成で実施されてもよい。]
[0054] 本発明の1つ以上の実施例は、1つ以上コンピュータプログラムとして、又は1つ以上のコンピュータ読み込み可能なメディアに実施される1つ以上のコンピュータプログラムモジュールとして実装されてもよい。コンピュータ読み込み可能なメディアという用語は、その後コンピュータシステムに入力されることができるデータを記憶可能で任意のデータストレージシステムを意味する。コンピュータ読み込み可能なメディアは、コンピュータによって読み込みが可能になるようにコンピュータプログラムを実施する、既存又は続いて開発される任意の技術に基づいてもよい。例えば、コンピュータ読み込み可能なメディアとしては、ハードドライブ、ネットワーク接続ストレージ(NAS)、リードオンリーメモリー、ランダムアクセスメモリ(例えば、フラッシュメモリーデバイス)、CD(コンパクトディスク)、CD−ROM、CD−R、又はCD−RW、DVD(Digital Versatile Disc)、磁気テープ、及びその他の光学及び非光学データストレージシステムが挙げられる。コンピュータ読み込み可能なメディアは、コンピュータ読み込み可能なコードが分散した形態で記憶及び実行されるように、ネットワーク接続コンピュータシステムを介して配布されることもできる。]
[0055] 本発明の1以上の実施例は明確な理解のために詳細に説明されたが、請求項の範囲において変更や変形がなされ得ることは明らかである。つまり、記載された実施例は制限的ではなく例示として解釈されなければならない。請求項の範囲は、ここに与えられる詳細に制限されてはならず、請求項と同等の範囲内で変更されてもよい。請求項においては、請求項に明示的に記載されない限り、要素及び/又はステップは動作の特定の順番を意味しない。]
[0056] 更に、記載された仮想化方法は、仮想マシンは特定のハードウェアシステムと一致するインターフェースを提供すると一般的に考えられるが、当業者は記載された方法が特定のハードウェアシステムに直接対応しない仮想化に関連して使われてもよいと認識する。ホストされる実施例、ホストされない実施例として実装される様々な実施例による仮想化システム、又はその2つの間の違いを不鮮明にしがちな実施例として実装される様々な実施例による仮想化システムは、全て想定される。更に、様々な仮想化動作が、ハードウェアに全体的に又は部分的に実装され得る。例えば、ハードウェア実装は、安全な非ディスクデータへのストレージアクセス要求の変形のための参照テーブルを採用してもよい。]
[0057] 仮想化の程度に関わらず、多くの仮想化、変形、追加、及び改良が可能である。従って、仮想化ソフトウェアは、仮想化機能を行うホスト、コンソール、ゲストオペレーティングシステムのコンポーネントを含む。複数のインスタンスが、1つのインスタンスとしてここに記載されるコンポーネント、動作、又は構造に提供されてもよい。最後に、様々なコンポーネント、動作、及びデータ記憶の境界は、やや任意のものであり、特定の動作は特定の例示的な構成の文脈で示される。その他の機能性の配置は想定されるものであり、発明の範囲に含まれてもよい。一般的に、例示の構成における別個のコンポーネントとして示される構造や機能性は、合体した構造又はコンポーネントとして実装されてもよい。同様に、1つのコンポーネントとして示された構造や機能性は、別個のコンポーネントとして実装されてもよい。これら及びその他の変形例、変更、追加、及び改良は、添付の請求項の範囲に含まれてもよい。]
权利要求:

請求項1
サーバーベースのデスクトップ仮想マシンのアーキテクチャーをクアイアントマシンに拡張する方法であって、通信ネットワーク経由でユーザーデスクトップにリモートアクセスし、このリモートアクセスはクライアントシステムとサーバーシステムの間のユーザー入出力を送受信することを含み、前記サーバーシステムは前記ユーザーデスクトップを提供する仮想マシンのサーバーインスタンスを実行し、前記仮想マシンの前記サーバーインスタンスはデータストレージシステムと通信する物理的なコンピュータシステムで仮想化ソフトウェアによって実行され、この仮想化ソフトウェアは前記仮想マシンの前記サーバーインスタンスからのディスク読み込み要求を仮想ディスクに誘導し、この仮想ディスクは前記データストレージシステムの1つ以上のファイルに含まれる仮想ディスクイメージを有し、前記仮想化ソフトウェアは前記仮想マシンの前記サーバーインスタンスからのディスク書き込み要求をデルタディスクに誘導し、このデルタディスクは前記仮想ディスクへの変更を含み、前記クライアントシステムは前記ユーザー入出力を受信し前記ユーザー入出力を前記クライアントシステムのユーザーインターフェースに送信するリモートデスクトップクライアントを有する方法であって、前記クライアントシステムに前記仮想ディスクのローカルコピーを作り、前記クライアントシステムからのチェックアウト要求を前記サーバーシステムに送信して前記ユーザーデスクトップにローカルアクセスし、もし前記仮想マシンの前記サーバーインスタンスが現在実行されているならば、前記仮想マシンの前記サーバーインスタンスを終了し、前記クライアントシステムに前記デルタディスクのコピーを作り、前記クライアントシステムの前記仮想マシンのクライアントインスタンスを前記クアイアントシステムの仮想化ソフトウェアを使って実行して前記仮想マシンの前記クライアントインスタンスからのディスク読み込み要求を少なくとも前記仮想ディスクの前記ローカルコピーに誘導しかつ前記仮想マシンの前記クライアントインスタンスからのユーザー入出力を前記クライアントシステムの前記ユーザーインターフェースに誘導することを含むことを特徴とする方法。
請求項2
前記仮想ディスクの前記ローカルコピーの作成は、前記仮想マシンの前記サーバーインスタンスの実行中に行われることを特徴とする請求項1記載の方法。
請求項3
前記仮想マシンの前記サーバーインスタンスの実行中に前記クアイアントシステムで前記サーバーシステムの前記デルタディスクに記憶される前記仮想ディスクへの変更を受信することを更に含むことを特徴とする請求項1記載の方法。
請求項4
前記仮想マシンの前記クライアントインスタンスを実行する前に前記デルタディスクのコピーを前記仮想ディスクの前記ローカルコピーとマージすることを更に含むことを特徴とする請求項1記載の方法。
請求項5
前記仮想マシンの前記クライアントインスタンスからのディスク書き込みをローカルデルタディスクに誘導し、前記クライアントシステムからのチェックイン要求を前記サーバーシステムに送信して前記ユーザーデスクトップにリモートアクセスし、もし前記仮想マシンの前記クライアントインスタンスが実行されているならば、前記仮想マシンの前記クライアントインスタンスを終了し、前記ローカルデルタディスクのコピーを前記サーバーシステムに送信し、前記仮想マシンの前記サーバーインスタンスにリモートアクセスすることを更に含むことを特徴とする請求項1記載の方法。
請求項6
前記サーバーシステムにおいて、前記ローカルデルタディスクの前記コピーを前記サーバーシステムに送信した後であって前記仮想マシンの前記サーバーインスタンスを電源オンする前に、前記デルタディスクと前記ローカルデルタディスクを前記仮想マシンにマージすることを更に含むことを特徴とする請求項5記載の方法。
請求項7
前記仮想マシンの前記クライアントインスタンスの実行が開始された後、前記サーバーシステムへの前記ローカルデルタディスクの前記コピーの送信の前までは、前記仮想マシンの前記サーバーインスタンスへのアクセスが防止されることを更に含むことを特徴とする請求項5記載の方法。
請求項8
前記仮想マシンの前記サーバーインスタンスの実行の最中に、定期的に追加デルタディスクを作り、この追加デルタディスクを前記クライアントシステムに送信することを更に含む方法であって、それぞれの前記追加デルタディスクはチェーンデルタディスクの一部分であることを特徴とする請求項1記載の方法。
請求項9
前記サーバーシステムにおいて、前記ユーザーデスクトップのデスクトップステータスをチェックイン又はチェックアウトとして維持し、前記ユーザーデスクトップが前記仮想マシンの前記サーバーインスタンスを使って最後にリモートアクセスされたときに前記デスクトップステータスはチェックインにされ、前記ユーザーデスクトップが前記仮想マシンの前記クライアントインスタンスを使って最後にローカルアクセスされたときに前記デスクトップステータスはチェックアウトにされ、前記サーバーシステムは前記クライアントシステム上の前記デルタディスクの前記コピーの作成の後に前記デスクトップステータスがチェックアウトされると想定することを更に含むことを特徴とする請求項1記載の方法。
請求項10
前記仮想化ソフトウェアはユーザーデータディスクとシステムディスクをエミュレートし、このユーザーデータディスク及びこのシステムディスクは前記仮想マシンで実行されるゲストシステムソフトウェアによってアクセス可能であって、前記ゲストシステムソフトウェアは前記ユーザーデータディスクに前記ユーザーデータを記憶し、前記システムディスクにオペレーティングシステムとアプリケーションファイルを記憶し、前記ユーザーデータはユーザードキュメントと設定を含み、前記データストレージシステムの前記仮想ディスクは仮想ユーザーデータディスクであって、前記デルタディスクはデルタユーザーデータディスクであり、前記ユーザーデスクトップのリモートアクセスは更に、ユーザーデータディスク読み込み要求を前記仮想ユーザーデータディスクに誘導しかつシステムディスク読み込み要求を仮想システムディスクに誘導し、この仮想システムディスクは前記データストレージシステム又は別のデータストレージシステムの1つ以上のファイルに記憶されるディスクイメージであり、システムディスク書き込み要求をデルタシステムディスクに誘導しかつユーザーディスク書き込みを前記デルタユーザーデータディスクに誘導し、このデルタシステムディスクは前記仮想システムディスクへの変更を含みかつ前記デルタユーザーデータディスクは仮想ユーザーデータディスクへの変更を含むことを含むことを特徴とする請求項1記載の方法。
請求項11
前記デルタディスクの前記コピーの作成が実行されるときに、前記デルタシステムディスクを破棄することを更に含むことを特徴とする請求項10記載の方法。
請求項12
前記デルタディスクの前記コピーの作成が実行されるときに、前記クライアントシステム上に前記デルタシステムディスクのコピーを作成することを更に含むことを特徴とする請求項10記載の方法。
請求項13
前記仮想マシンの前記クライアントインスタンスの実行の前に前記サーバーシステムにおいて前記デルタディスクをスキャンしてマルウェアを探すことを更に含むことを特徴とする請求項1記載の方法。
請求項14
サーバーベースのデスクトップ仮想マシンのアーキテクチャーをクアイアントマシンに拡張するための有形の機械読み込み可能メディアであって、この有形の機械読み込み可能メディアはクライアントシステムに方法を実装するコンピュータプログラム命令を実現し、前記方法は、通信ネットワーク経由でユーザーデスクトップにリモートアクセスし、このリモートアクセスはクライアントシステムとサーバーシステムの間のユーザー入出力を送受信することを含み、前記サーバーシステムは前記ユーザーデスクトップを提供する仮想マシンのサーバーインスタンスを実行し、前記仮想マシンの前記サーバーインスタンスはデータストレージシステムと通信する物理的なコンピュータシステムで仮想化ソフトウェアによって実行され、この仮想化ソフトウェアは前記仮想マシンの前記サーバーインスタンスからのディスク読み込み要求を仮想ディスクに誘導し、この仮想ディスクは前記データストレージシステムの1つ以上のファイルに含まれる仮想ディスクイメージを有し、前記仮想化ソフトウェアは前記仮想マシンの前記サーバーインスタンスからのディスク書き込み要求をデルタディスクに誘導し、このデルタディスクは前記仮想ディスクへの変更を含み、前記クライアントシステムは前記ユーザー入出力を受信し前記ユーザー入出力を前記クライアントシステムのユーザーインターフェースに送信するリモートデスクトップクライアントを有する方法であって、前記クライアントシステムに前記仮想ディスクのローカルコピーを作り、前記クライアントシステムからのチェックアウト要求を前記サーバーシステムに送信して前記ユーザーデスクトップにローカルアクセスし、もし前記仮想マシンの前記サーバーインスタンスが現在実行されているならば、前記仮想マシンの前記サーバーインスタンスを終了し、前記クライアントシステムに前記デルタディスクのコピーを作り、前記クライアントシステムの前記仮想マシンのクライアントインスタンスを前記クアイアントシステムの仮想化ソフトウェアを使って実行して前記仮想マシンの前記クライアントインスタンスからのディスク読み込み要求を少なくとも前記仮想ディスクの前記ローカルコピーに誘導しかつ前記仮想マシンの前記クライアントインスタンスからのユーザー入出力を前記クライアントシステムの前記ユーザーインターフェースに誘導することを含むことを特徴とするメディア。
請求項15
前記仮想ディスクの前記ローカルコピーの作成は、前記仮想マシンの前記サーバーインスタンスの実行中に行われることを特徴とする請求項14記載のメディア。
請求項16
前記方法は、前記仮想マシンの前記サーバーインスタンスの実行中に前記クアイアントシステムで前記サーバーシステムの前記デルタディスクに記憶される前記仮想ディスクへの変更を受信することを更に含むことを特徴とする請求項14記載のメディア。
請求項17
前記方法は、前記仮想マシンの前記クライアントインスタンスを実行する前に前記デルタディスクのコピーを前記仮想ディスクのローカルコピーとマージすることを更に含むことを特徴とする請求項14記載のメディア。
請求項18
前記方法は、前記仮想マシンの前記クライアントインスタンスからのディスク書き込みをローカルデルタディスクに誘導し、前記クライアントシステムからのチェックイン要求を前記サーバーシステムに送信して前記ユーザーデスクトップにリモートアクセスし、もし前記仮想マシンの前記クライアントインスタンスが実行されているならば、前記仮想マシンの前記クライアントインスタンスを終了し、前記ローカルデルタディスクのコピーを前記サーバーシステムに送信し、前記ローカルデルタディスクのコピーを前記サーバーシステムに送信した後に前記仮想マシンの前記サーバーインスタンスにリモートアクセスすることを更に含むことを特徴とする請求項14記載のメディア。
請求項19
前記サーバーシステムにおいて、前記ローカルデルタディスクの前記コピーを前記サーバーシステムに送信した後であって前記仮想マシンの前記サーバーインスタンスを電源オンする前に、前記デルタディスクと前記ローカルデルタディスクを前記仮想マシンにマージすることを更に含むことを特徴とする請求項18記載のメディア。
請求項20
前記方法は、前記仮想マシンの前記クライアントインスタンスの実行が開始された後、前記サーバーシステムへの前記ローカルデルタディスクの前記コピーの送信の前までは、前記仮想マシンの前記サーバーインスタンスへのアクセスが防止されることを更に含むことを特徴とする請求項18記載のメディア。
請求項21
前記方法は、前記仮想マシンの前記サーバーインスタンスの実行の最中に、定期的に追加デルタディスクを作り、この追加デルタディスクを前記クライアントシステムに送信することを更に含むメディアであって、それぞれの前記追加デルタディスクはチェーンデルタディスクの一部分であることを特徴とする請求項14記載のメディア。
請求項22
前記仮想化ソフトウェアはユーザーデータディスクとシステムディスクをエミュレートし、このユーザーデータディスク及びシステムディスクは前記仮想マシンで実行されるゲストシステムソフトウェアによってアクセス可能であって、前記ゲストシステムソフトウェアは前記ユーザーデータディスクに前記ユーザーデータを記憶し、前記システムディスクにオペレーティングシステムとアプリケーションファイルを記憶し、前記ユーザーデータはユーザードキュメントと設定を含み、前記データストレージシステムの前記仮想ディスクは仮想ユーザーデータディスクであって、前記デルタディスクはデルタユーザーデータディスクであり、前記ユーザーデスクトップのリモートアクセスは更に、ユーザーデータディスク読み込み要求を前記仮想ユーザーデータディスクに誘導しかつシステムディスク読み込み要求を仮想システムディスクに誘導し、この仮想システムディスクは前記データストレージシステム又は別のデータストレージシステムの1つ以上のファイルに記憶されるディスクイメージであり、システムディスク書き込み要求をデルタシステムディスクに誘導しかつユーザーディスク書き込みを前記デルタユーザーデータディスクに誘導し、このデルタシステムディスクは前記仮想システムディスクへの変更を含みかつ前記デルタユーザーデータディスクは前記仮想ユーザーデータディスクへの変更を含み、前記クライアントシステム上に前記デルタディスクの前記コピーを作ることは前記サーバーシステムから前記ユーザーデータディスクへの変更をダウンロードすることと前記システムディスクドライブへ変更をダウンロードしないことを含むことを含むことを特徴とする請求項14記載のメディア。
請求項23
前記デルタディスクの前記コピーの作成が実行されるときに、前記サーバーシステムはデルタシステムディスクを破棄することを更に含むことを特徴とする請求項22記載のメディア。
請求項24
前記方法は、前記デルタディスクの前記コピーの作成が実行されるときに、前記クライアントシステム上に前記デルタシステムディスクのコピーを作成することを更に含むことを特徴とする請求項22記載のメディア。
請求項25
前記仮想マシンの前記クライアントインスタンスの実行の前に前記サーバーシステムは前記サーバーシステムにおいて前記デルタディスクをスキャンしてマルウェアを探すことを更に含むことを特徴とする請求項14記載のメディア。
請求項26
サーバーベースのデスクトップ仮想マシンのアーキテクチャーをクアイアントマシンに拡張するための有形の機械読み込み可能メディアであって、この有形の機械読み込み可能メディアはクライアントシステムに方法を実装するコンピュータプログラム命令を実現し、前記方法は、ユーザーデスクトップを提供する仮想マシンのサーバーインスタンスを実行し、前記仮想マシンの前記サーバーインスタンスは前記サーバーシステムの物理的コンピュータ上で仮想化ソフトウェアによって実行され、この物理的コンピュータはデータストレージシステムと通信し、前記仮想化ソフトウェアは前記仮想マシンの前記サーバーインスタンスからのディスク読み込み要求を仮想ディスクに誘導し、この仮想ディスクは前記データストレージシステムの1つ以上のファイルに含まれる仮想ディスクイメージを有し、前記仮想化ソフトウェアは前記仮想マシンの前記サーバーインスタンスからのディスク書き込み要求をデルタディスクに誘導し、このデルタディスクは前記仮想ディスクへの変更を含み、前記クライアントシステムは前記ユーザー入出力を受信し前記ユーザー入出力を前記クライアントシステムのユーザーインターフェースに送信するリモートデスクトップクライアントを有する方法であって、クアイアントシステムとサーバーシステムの間のユーザー入出力を送受信し、前記仮想ディスクのコピーを前記クライアントシステムに送信し、前記クライアントシステムからチェックアウト要求を受信し、このチェックアウト要求に応答して、もし前記仮想マシンの前記サーバーインスタンスが現在実行中ならば前記仮想マシンの前記サーバーインスタンスを停止し、ユーザーが前記クライアントシステム上で実行される前記仮想マシンの前記クライアントインスタンスを使って前記デスクトップにアクセスできるように前記デルタディスクのコピーを前記クライアントシステムに送信し、前記ユーザーデスクトップのデスクトップステータスの記録をチェックイン又はチェックアウトとして維持し、このユーザーデスクトップが前記仮想マシンの前記サーバーインスタンスを使って最後にリモートアクセスされたときに前記デスクトップステータスはチェックインにされ、このユーザーデスクトップが前記仮想マシンの前記クライアントインスタンスを使って最後にローカルアクセスされたときに前記デスクトップステータスはチェックアウトにされ、前記サーバーシステムは前記デルタディスクの前記コピーを前記クライアントシステムに送信した後に前記デスクトップステータスがチェックアウトされると想定することを更に含むことを特徴とするメディア。
类似技术:
公开号 | 公开日 | 专利标题
US20180276229A1|2018-09-27|Trusted File Indirection
US10511661B2|2019-12-17|N-way synchronization of desktop images
US20180046479A1|2018-02-15|On-demand disposable virtual work system
US10601919B2|2020-03-24|Cache migration management in a virtualized distributed computing system
US9348636B2|2016-05-24|Transferring files using a virtualized application
US9928101B2|2018-03-27|Certificate based connection to cloud virtual machine
US9652273B2|2017-05-16|Method and system for creating a hierarchy of virtual machine templates in a virtualized computing system
US10389852B2|2019-08-20|Method and system for providing a roaming remote desktop
US9477520B2|2016-10-25|Registering and accessing virtual systems for use in a managed system
US9864625B2|2018-01-09|Independent access to virtual machine desktop content
US9563460B2|2017-02-07|Enforcement of compliance policies in managed virtual systems
US10331525B2|2019-06-25|Cluster file server proxy server for backup and recovery
US10735393B2|2020-08-04|Data communication method, user equipment, and server
US9710482B2|2017-07-18|Enforcement of compliance policies in managed virtual systems
US9170833B2|2015-10-27|Compliance-based adaptations in managed virtual systems
US20160299774A1|2016-10-13|Techniques for Migrating a Virtual Machine Using Shared Storage
US9286087B2|2016-03-15|Storage optimization selection within a virtualization environment
US10609112B2|2020-03-31|Method, server and system for converging desktop application and web application
JP5496254B2|2014-05-21|マシンから仮想マシンへの変換
US8924954B2|2014-12-30|Application software installation method and application software installation apparatus
US10353724B2|2019-07-16|Automatic optimization for virtual systems
JP5993947B2|2016-09-21|Use native viewer for service results from remote desktop
US8752047B2|2014-06-10|Automated management of virtual machines to process untrusted data based on client policy information
JP5681465B2|2015-03-11|Information processing system, information processing apparatus, preparation method, program, and recording medium
US8839246B2|2014-09-16|Automatic optimization for virtual systems
同族专利:
公开号 | 公开日
KR101178752B1|2012-09-10|
CA2713876A1|2009-09-03|
KR20100123847A|2010-11-25|
CA2713876C|2014-11-04|
EP2248041A2|2010-11-10|
CN101971162A|2011-02-09|
JP5198584B2|2013-05-15|
US20140189816A1|2014-07-03|
US8640126B2|2014-01-28|
WO2009108579A2|2009-09-03|
US9444883B2|2016-09-13|
MX2010009362A|2010-12-06|
US20180341511A1|2018-11-29|
RU2432605C1|2011-10-27|
US10061605B2|2018-08-28|
EP2248041B1|2015-04-29|
AU2009219470B2|2012-06-21|
EP2248041A4|2013-01-23|
AU2009219470A1|2009-09-03|
CN101971162B|2012-11-21|
US20090216975A1|2009-08-27|
WO2009108579A3|2009-11-26|
US20160371111A1|2016-12-22|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
JP2001142766A|1999-11-10|2001-05-25|Nec Corp|データベース交換システム|
JP2006107185A|2004-10-06|2006-04-20|Hitachi Ltd|オフライン作業可能な端末を有する計算機システム|
JP2006190281A|2004-12-30|2006-07-20|Microsoft Corp|System and method for virtualizing a graphics subsystem|JP2011170543A|2010-02-17|2011-09-01|Fujitsu Ltd|情報処理装置、計算機システム及びプログラム|
WO2014055640A1|2012-10-04|2014-04-10|Avocent Huntsville Corp.|System and method for creating virtual disk images for use with remote computer|
JP2015520890A|2012-04-27|2015-07-23|ネットアップ,インコーポレイテッド|仮想ストレージ装置ゲートウェイ|
JP2015225632A|2014-05-30|2015-12-14|日本電気株式会社|シンクライアント端末装置、サーバ装置、方法、およびプログラム|
JP2016519824A|2013-04-09|2016-07-07|サイトリックス システムズ,インコーポレイテッド|クラウド同期型データの使用によるネイティブデスクトップの提供|
JP2016530604A|2013-06-26|2016-09-29|アマゾン テクノロジーズ インコーポレイテッド|コンピューティングセッションの管理|
JPWO2015025384A1|2013-08-21|2017-03-02|株式会社東芝|データベースシステム、プログラムおよびデータ処理方法|
US10162875B2|2013-08-27|2018-12-25|Kabushiki Kaisha Toshiba|Database system including a plurality of nodes|
US10198285B2|2012-10-04|2019-02-05|Vertiv It Systems, Inc.|System and method for creating virtual disk images for use with remote computer|US7313614B2|2000-11-02|2007-12-25|Sun Microsystems, Inc.|Switching system|
US20020156971A1|2001-04-19|2002-10-24|International Business Machines Corporation|Method, apparatus, and program for providing hybrid disk mirroring and striping|
US7275105B2|2002-01-16|2007-09-25|Laszlo Systems, Inc.|Enabling online and offline operation|
US7032131B2|2002-03-26|2006-04-18|Hewlett-Packard Development Company, L.P.|System and method for ensuring merge completion in a storage area network|
US9171049B2|2002-06-13|2015-10-27|Salesforce.Com, Inc.|Offline simulation of online session between client and server|
US7793060B2|2003-07-15|2010-09-07|International Business Machines Corporation|System method and circuit for differential mirroring of data|
US7555531B2|2004-04-15|2009-06-30|Microsoft Corporation|Efficient algorithm and protocol for remote differential compression|
US7536525B2|2004-11-09|2009-05-19|Dell Products L.P.|Virtual machine hot cloning including freezing and unfreezing memory in a distributed network|
US20060184937A1|2005-02-11|2006-08-17|Timothy Abels|System and method for centralized software management in virtual machines|
US20070094659A1|2005-07-18|2007-04-26|Dell Products L.P.|System and method for recovering from a failure of a virtual machine|
US7447854B1|2005-12-30|2008-11-04|Vmware, Inc.|Tracking and replicating changes to a virtual disk|
US20070174429A1|2006-01-24|2007-07-26|Citrix Systems, Inc.|Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment|
US7739738B1|2006-03-15|2010-06-15|Symantec Corporation|Enabling clean file cache persistence using dual-boot detection|
US20070260702A1|2006-05-03|2007-11-08|University Of Washington|Web browser architecture for virtual machine access|
US9392078B2|2006-06-23|2016-07-12|Microsoft Technology Licensing, Llc|Remote network access via virtual machine|
US20080086540A1|2006-10-06|2008-04-10|James Scott|Method and system for executing a normally online application in an offline mode|
CA2665873A1|2006-10-20|2008-05-02|Citrix Systems, Inc.|Methods and systems for accessing remote user files associated with local resources|
WO2008073618A2|2006-11-06|2008-06-19|Devicevm, Inc.|Instant on platform|
US20080201414A1|2007-02-15|2008-08-21|Amir Husain Syed M|Transferring a Virtual Machine from a Remote Server Computer for Local Execution by a Client Computer|
US20080235361A1|2007-03-21|2008-09-25|David Crosbie|Management layer method and apparatus for dynamic assignment of users to computer resources|
US20080301770A1|2007-05-31|2008-12-04|Kinder Nathan G|Identity based virtual machine selector|
US9069638B2|2007-06-11|2015-06-30|Red Hat, Inc.|Update system to synchronize changes from external sources for a java virtual machine|
US7970903B2|2007-08-20|2011-06-28|Hitachi, Ltd.|Storage and server provisioning for virtualized and geographically dispersed data centers|
AU2009219470B2|2008-02-26|2012-06-21|Vmware, Inc.|Extending server-based desktop virtual machine architecture to client machines|
US8255806B2|2008-09-15|2012-08-28|Vmware, Inc.|Unified secure virtual machine player and remote desktop client|US7617501B2|2004-07-09|2009-11-10|Quest Software, Inc.|Apparatus, system, and method for managing policies on a computer having a foreign operating system|
US7904949B2|2005-12-19|2011-03-08|Quest Software, Inc.|Apparatus, systems and methods to provide authentication services to a legacy application|
US8087075B2|2006-02-13|2011-12-27|Quest Software, Inc.|Disconnected credential validation using pre-fetched service tickets|
US8429712B2|2006-06-08|2013-04-23|Quest Software, Inc.|Centralized user authentication system apparatus and method|
US8086710B2|2006-10-30|2011-12-27|Quest Software, Inc.|Identity migration apparatus and method|
US20090164994A1|2007-12-20|2009-06-25|Virtual Computer, Inc.|Virtual computing management systems and methods|
AU2009219470B2|2008-02-26|2012-06-21|Vmware, Inc.|Extending server-based desktop virtual machine architecture to client machines|
US8560593B2|2008-03-27|2013-10-15|Dell Software Inc.|System for provisioning, allocating, and managing virtual and physical desktop computers in a network computing environment|
US8572607B2|2008-05-19|2013-10-29|Novell, Inc.|System and method for performing designated service image processing functions in a service image warehouse|
CN102037444B|2008-05-20|2014-07-30|思杰系统有限公司|用于修补从通用基础磁盘映像获取的多个磁盘映像的方法和系统|
US8255806B2|2008-09-15|2012-08-28|Vmware, Inc.|Unified secure virtual machine player and remote desktop client|
WO2010048492A2|2008-10-24|2010-04-29|Citrix Systems, Inc.|Methods and systems for providing a modifiable machine base image with a personalized desktop environment in a combined computing environment|
CN101727331B|2008-10-24|2013-03-20|国际商业机器公司|升级活动虚拟机的客户操作系统的方法和设备|
US8707299B1|2008-11-14|2014-04-22|Symantec Corporation|Method and apparatus for preserving virtual desktops for e-discovery through an agent-less solution|
US9674562B1|2008-12-18|2017-06-06|Vmware, Inc.|Quality evaluation of multimedia delivery in cloud environments|
US9336117B2|2010-11-09|2016-05-10|Vmware, Inc.|Remote display performance measurement triggered by application display upgrade|
US9214004B2|2008-12-18|2015-12-15|Vmware, Inc.|Watermarking and scalability techniques for a virtual desktop planning tool|
US9286088B2|2009-03-09|2016-03-15|Microsoft Technology Licensing, Llc|User interface for interaction with virtual machine|
US9177145B2|2009-03-24|2015-11-03|Sophos Limited|Modified file tracking on virtual machines|
JP5360199B2|2009-03-31|2013-12-04|富士通株式会社|仮想計算機システム、情報処理装置、コンピュータプログラム及び接続制御方法|
WO2010129487A1|2009-05-02|2010-11-11|Citrix Systems, Inc.|Methods and systems for providing a consistent profile to overlapping user sessions|
US8135818B2|2009-06-22|2012-03-13|Red Hat Israel, Ltd.|Automatic virtual machine migration in mixed SBC/CBC environment|
US8738781B2|2009-06-22|2014-05-27|Red Hat Israel, Ltd.|Launching a virtual machine associated with a client during startup|
US8281018B2|2009-06-22|2012-10-02|Red Hat Israel, Ltd.|Method for automatically providing a client with access to an associated virtual machine|
US8341213B2|2009-06-22|2012-12-25|Red Hat Israel, Ltd.|Method for improving boot time of a client having a virtualized operating environment|
US8255984B1|2009-07-01|2012-08-28|Quest Software, Inc.|Single sign-on system for shared resource environments|
US20120131323A1|2009-09-21|2012-05-24|Yves Gattegno|System including a virtual disk|
US20110131330A1|2009-12-02|2011-06-02|International Business Machines Corporation|Collocating desktop virtual machines to proximity of the user|
WO2011072142A2|2009-12-09|2011-06-16|Citrix Systems, Inc.|Methods and systems for displaying, on a first machine, data associated with a drive of a second machine, without mapping the drive|
US10146566B2|2009-12-21|2018-12-04|Microsoft Technology Licensing, Llc|Enabling virtual desktop connections to remote clients|
JP5499688B2|2009-12-23|2014-05-21|富士通株式会社|計算機システム、情報処理装置、仮想計算機運用方法及びプログラム|
US8887172B2|2009-12-31|2014-11-11|Microsoft Corporation|Virtualized management of remote presentation sessions using virtual machines having load above or below thresholds|
US9477531B2|2010-01-27|2016-10-25|Vmware, Inc.|Accessing virtual disk content of a virtual machine without running a virtual desktop|
US9274821B2|2010-01-27|2016-03-01|Vmware, Inc.|Independent access to virtual machine desktop content|
US9009219B2|2010-01-27|2015-04-14|Vmware, Inc.|Native viewer use for service results from a remote desktop|
US8392838B2|2010-01-27|2013-03-05|Vmware, Inc.|Accessing virtual disk content of a virtual machine using a control virtual machine|
CN101741866B|2010-02-01|2012-12-12|浪潮电子信息产业有限公司|一种在线存储系统及方法|
US8316120B2|2010-02-02|2012-11-20|Microsoft Corporation|Applicability detection using third party target state|
US8549272B2|2010-02-10|2013-10-01|Dell Products L.P.|Information handling system image management deployment of virtual machine images to physical information handling systems|
US9703586B2|2010-02-17|2017-07-11|Microsoft Technology Licensing, Llc|Distribution control and tracking mechanism of virtual machine appliances|
JP5493976B2|2010-02-18|2014-05-14|富士通株式会社|情報処理装置、計算機システム及びプログラム|
US8949316B2|2010-03-09|2015-02-03|Avistar Communications Corp.|Scalable high-performance interactive real-time media architectures for virtual desktop environments|
CN102196003B|2010-03-12|2015-09-23|新奥特(北京)视频技术有限公司|一种监控系统的远程控制方法及装置|
US8898668B1|2010-03-31|2014-11-25|Netapp, Inc.|Redeploying baseline virtual machine to update a child virtual machine by creating and swapping a virtual disk comprising a clone of the baseline virtual machine|
US8453145B1|2010-05-06|2013-05-28|Quest Software, Inc.|Systems and methods for instant provisioning of virtual machine files|
EP2569705A4|2010-05-09|2014-05-14|Citrix Systems Inc|Systems and methods for creation and delivery of encrypted virtual disks|
US8893004B2|2010-05-12|2014-11-18|International Business Machines Corporation|User interface proxy method and system|
US9547562B1|2010-08-11|2017-01-17|Dell Software Inc.|Boot restore system for rapidly restoring virtual machine backups|
JP4922443B2|2010-08-26|2012-04-25|株式会社東芝|コンピュータシステム、情報処理装置およびセキュリティ保護方法|
TWI505189B|2010-08-27|2015-10-21|Ibm|用於虛擬裝置之自動升級之方法、電腦程式及系統|
CN102419753B|2010-09-28|2014-02-12|联想有限公司|信息处理设备、信息处理方法和信息处理系统|
CN102447723B|2010-10-12|2015-09-09|运软网络科技有限公司|客户端虚拟化架构|
US8386501B2|2010-10-20|2013-02-26|Microsoft Corporation|Dynamically splitting multi-tenant databases|
US8799453B2|2010-10-20|2014-08-05|Microsoft Corporation|Managing networks and machines for an online service|
US9075661B2|2010-10-20|2015-07-07|Microsoft Technology Licensing, Llc|Placing objects on hosts using hard and soft constraints|
US8417737B2|2010-10-20|2013-04-09|Microsoft Corporation|Online database availability during upgrade|
US8751656B2|2010-10-20|2014-06-10|Microsoft Corporation|Machine manager for deploying and managing machines|
US8756696B1|2010-10-30|2014-06-17|Sra International, Inc.|System and method for providing a virtualized secure data containment service with a networked environment|
US8788079B2|2010-11-09|2014-07-22|Vmware, Inc.|Monitoring audio fidelity and audio-video synchronization|
US8850550B2|2010-11-23|2014-09-30|Microsoft Corporation|Using cached security tokens in an online service|
CN102487380B|2010-12-01|2016-09-07|中兴通讯股份有限公司|桌面虚拟化终端托管方法及系统|
US9721030B2|2010-12-09|2017-08-01|Microsoft Technology Licensing, Llc|Codeless sharing of spreadsheet objects|
KR20120072241A|2010-12-23|2012-07-03|한국전자통신연구원|클라우드 컴퓨팅 환경에서의 클라우드 간 개인 가상 머신 이동 시스템 및 그 방법|
US20120216052A1|2011-01-11|2012-08-23|Safenet, Inc.|Efficient volume encryption|
US10003672B2|2011-02-09|2018-06-19|Cisco Technology, Inc.|Apparatus, systems and methods for deployment of interactive desktop applications on distributed infrastructures|
US10225335B2|2011-02-09|2019-03-05|Cisco Technology, Inc.|Apparatus, systems and methods for container based service deployment|
US9967318B2|2011-02-09|2018-05-08|Cisco Technology, Inc.|Apparatus, systems, and methods for cloud agnostic multi-tier application modeling and deployment|
US10678602B2|2011-02-09|2020-06-09|Cisco Technology, Inc.|Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures|
US8862933B2|2011-02-09|2014-10-14|Cliqr Technologies, Inc.|Apparatus, systems and methods for deployment and management of distributed computing systems and applications|
US8856486B2|2011-02-23|2014-10-07|Citrix Systems, Inc.|Deploying a copy of a disk image from source storage to target storage|
US8566899B2|2011-03-16|2013-10-22|Symantec Corporation|Techniques for securing a checked-out virtual machine in a virtual desktop infrastructure|
US8959569B2|2011-03-18|2015-02-17|Juniper Networks, Inc.|Security enforcement in virtualized systems|
FR2973185B1|2011-03-22|2013-03-29|Sagem Defense Securite|Procede et dispositif de connexion a un reseau de haute securite|
JP5772127B2|2011-03-25|2015-09-02|富士通株式会社|仮想マシン管理方法、情報処理装置および仮想マシン管理プログラム|
US8990405B2|2011-04-01|2015-03-24|Hewlett-Packard Development Company, L.P.|Methods, systems and articles of manufacture to resume a remote desktop session|
US8966581B1|2011-04-07|2015-02-24|Vmware, Inc.|Decrypting an encrypted virtual machine using asymmetric key encryption|
CN102760081B|2011-04-29|2016-01-27|国际商业机器公司|虚拟机资源分配的方法和装置|
US9176744B2|2011-05-20|2015-11-03|Citrix Systems, Inc.|Quickly provisioning a virtual machine by identifying a path to a differential file during pre-boot|
US8719522B1|2011-06-27|2014-05-06|Emc Corporation|Virtual desktop backup and restore|
KR101507919B1|2011-07-01|2015-04-07|한국전자통신연구원|가상 데스크탑 서비스를 위한 방법 및 장치|
RU2486562C2|2011-08-26|2013-06-27|Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации |Способ построения автоматизированной системы, реализующей принципы виртуализации рабочих мест и изоморфного масштабирования|
WO2013039481A1|2011-09-13|2013-03-21|Empire Technology Development Llc|Operation transfer from an origin virtual machine to a destination virtual machine|
CN102355501B|2011-09-28|2017-06-13|华为技术有限公司|一种数据处理方法、接入审核设备及系统|
US9542215B2|2011-09-30|2017-01-10|V3 Systems, Inc.|Migrating virtual machines from a source physical support environment to a target physical support environment using master image and user delta collections|
US20130093776A1|2011-10-14|2013-04-18|Microsoft Corporation|Delivering a Single End User Experience to a Client from Multiple Servers|
CN102427448B|2011-11-03|2017-07-14|南京中兴软件有限责任公司|在虚拟桌面中使用客户端输入法的方法、终端及服务端|
US8769519B2|2011-12-08|2014-07-01|Microsoft Corporation|Personal and pooled virtual machine update|
CN103150204B|2011-12-23|2016-06-29|腾讯科技(深圳)有限公司|操作系统桌面管理方法和装置|
CN103188307A|2011-12-30|2013-07-03|旭智科技(深圳)有限公司|新型云应用方法及系统|
CN103200215A|2012-01-08|2013-07-10|佳都新太科技股份有限公司|一种在https上实现XenServer虚拟机远程控制的方法|
US8839447B2|2012-02-27|2014-09-16|Ca, Inc.|System and method for virtual image security in a cloud environment|
JP5670369B2|2012-03-08|2015-02-18|株式会社東芝|情報処理装置、イメージファイル管理方法およびプログラム|
CN102662741B|2012-04-05|2014-04-02|华为技术有限公司|虚拟桌面的实现方法、装置和系统|
KR101239290B1|2012-07-23|2013-03-06|엔텍|제로 클라이언트를 지원하는 가상화 서버의 가상 머신 설정을 위한 시스템 및 방법|
US9977698B2|2012-07-31|2018-05-22|V3 Systems Holdings, Inc.|Virtual machine migration into the cloud|
US9117093B2|2012-09-26|2015-08-25|Ca, Inc.|Centralized, policy-driven maintenance of storage for virtual machine disksand/or physical disks|
CN111164570A|2017-10-11|2020-05-15|维谛信息技术系统有限公司|用于创建用于与远程计算机一起使用的虚拟盘映像的系统和方法|
US9372760B1|2012-10-19|2016-06-21|Veritas Technologies Llc|Systems and methods for securely storing backup data while facilitating fast failovers|
US9921884B1|2012-11-01|2018-03-20|Amazon Technologies, Inc.|Local and remote access to virtual machine image filesystems|
US9992185B1|2012-11-02|2018-06-05|Wyse Technology L.L.C.|Virtual desktop accelerator support for network gateway|
US9262212B2|2012-11-02|2016-02-16|The Boeing Company|Systems and methods for migrating virtual machines|
US9374351B1|2012-11-02|2016-06-21|Wyse Technology L.L.C.|Virtual desktop accelerator support for network gateway|
US9485233B1|2012-11-02|2016-11-01|Wyse Technology L.L.C.|Virtual desktop accelerator support for network gateway|
KR101379835B1|2012-11-28|2014-04-02|성균관대학교산학협력단|가상 머신에 가상 배터리를 제공하는 가상 머신 모니터, 가상 머신 호스트 시스템 및 가상 배터리 관리 방법|
US9092161B2|2012-12-05|2015-07-28|Red Hat Israel, Ltd.|Selection of allocation policy and format for virtual machine disk images|
US10162873B2|2012-12-21|2018-12-25|Red Hat, Inc.|Synchronization of physical disks|
US20140188977A1|2012-12-28|2014-07-03|Futurewei Technologies, Inc.|Appratus, method for deploying applications in a virtual desktop interface system|
US10284668B2|2013-01-09|2019-05-07|Red Hat Israel, Ltd.|Managing a logical client for an application|
US9549019B2|2013-01-09|2017-01-17|Red Hat Israel, Ltd.|Managing a logical client for a virtual machine|
US8997080B2|2013-02-11|2015-03-31|Citrix Systems, Inc.|System updates with personal virtual disks|
US9201755B2|2013-02-14|2015-12-01|Vmware, Inc.|Real-time, interactive measurement techniques for desktop virtualization|
US9002982B2|2013-03-11|2015-04-07|Amazon Technologies, Inc.|Automated desktop placement|
US9148350B1|2013-03-11|2015-09-29|Amazon Technologies, Inc.|Automated data synchronization|
US10142406B2|2013-03-11|2018-11-27|Amazon Technologies, Inc.|Automated data center selection|
US10313345B2|2013-03-11|2019-06-04|Amazon Technologies, Inc.|Application marketplace for virtual desktops|
CA2852597C|2013-05-23|2020-02-04|Ellison Information Manufacturing Inc.|Method and system for input driven process flow management|
US20140359213A1|2013-05-31|2014-12-04|Microsoft Corporation|Differencing disk improved deployment of virtual machines|
EP2813945A1|2013-06-14|2014-12-17|Tocario GmbH|Method and system for enabling access of a client device to a remote desktop|
US10686646B1|2013-06-26|2020-06-16|Amazon Technologies, Inc.|Management of computing sessions|
US9264289B2|2013-06-27|2016-02-16|Microsoft Technology Licensing, Llc|Endpoint data centers of different tenancy sets|
US9639384B2|2013-08-20|2017-05-02|Vmware, Inc.|Method and system for fast provisioning of virtual desktop|
US9851993B2|2013-09-24|2017-12-26|International Business Machines Corporation|Virtual machine template optimization|
US9485099B2|2013-10-25|2016-11-01|Cliqr Technologies, Inc.|Apparatus, systems and methods for agile enablement of secure communications for cloud based applications|
CN103593227B|2013-11-08|2017-02-22|何钦淋|在客户端运行桌面虚拟系统的方法及客户端|
CN103677840A|2013-12-18|2014-03-26|浪潮电子信息产业股份有限公司|一种在作业调度软件中查看及操作应用图形界面的方法|
US10353633B2|2013-12-19|2019-07-16|Sony Interactive Entertainment LLC|Mass storage virtualization for cloud computing|
US9720719B2|2013-12-23|2017-08-01|Citrix Systems, Inc.|Method and system for optimizing virtual disk provisioning|
WO2015099690A1|2013-12-23|2015-07-02|Citrix Systems, Inc.|Method and system for optimizing virtual disk provisioning|
US9264517B2|2014-02-19|2016-02-16|Vmware, Inc.|Wide area aggregated communications|
CN104901923B|2014-03-04|2018-12-25|新华三技术有限公司|一种虚拟机访问装置和方法|
US9430213B2|2014-03-11|2016-08-30|Cliqr Technologies, Inc.|Apparatus, systems and methods for cross-cloud software migration and deployment|
US9734191B2|2014-03-31|2017-08-15|Dell Products, L.P.|Asynchronous image repository functionality|
US9280376B2|2014-05-13|2016-03-08|Dell Products, Lp|System and method for resizing a virtual desktop infrastructure using virtual desktop infrastructure monitoring tools|
US20170123836A1|2014-06-17|2017-05-04|Nokia Solutions And Networks Oy|Methods and apparatus to control a virtual machine|
US20160026492A1|2014-07-24|2016-01-28|Samsung Electronics Co., Ltd.|Electronic apparatus for executing virtual machine and method for executing virtual machine|
US20160044139A1|2014-08-07|2016-02-11|Hsiu-Ping Lin|Methods and systems for communications between apps and virtual machines|
US10073902B2|2014-09-24|2018-09-11|Microsoft Technology Licensing, Llc|Snapshot and replication of a multi-stream application on multiple hosts at near-sync frequency|
TWI608420B|2014-10-20|2017-12-11|緯創資通股份有限公司|虛擬機器監控方法及其系統|
US20170054792A1|2014-11-20|2017-02-23|Otoy, Inc.|Systems and methods for deploying applications|
KR101929048B1|2015-06-24|2018-12-13|한국전자통신연구원|인메모리 기반 가상 데스크탑 서비스를 위한 장치 및 방법|
KR20170000567A|2015-06-24|2017-01-03|한국전자통신연구원|가상 데스크탑 서비스를 위한 장치 및 방법|
KR101977726B1|2015-11-17|2019-05-14|한국전자통신연구원|가상 데스크탑 서비스 방법 및 장치|
US10133868B2|2016-01-10|2018-11-20|Apple Inc.|Switching users and sync bubble for EDU mode|
US10192055B2|2016-01-10|2019-01-29|Apple Inc.|Log in/log out process for EDU mode|
CN105653342B|2016-02-01|2018-09-28|福建升腾资讯有限公司|一种Windows池桌面自动入域的方法及系统|
US10719305B2|2016-02-12|2020-07-21|Nutanix, Inc.|Virtualized file server tiers|
US10318330B2|2016-11-30|2019-06-11|Salesforce.Com, Inc.|Data-persisting temporary virtual machine environments|
US10728090B2|2016-12-02|2020-07-28|Nutanix, Inc.|Configuring network segmentation for a virtualization environment|
US10824455B2|2016-12-02|2020-11-03|Nutanix, Inc.|Virtualized server systems and methods including load balancing for virtualized file servers|
US20180295216A1|2017-04-10|2018-10-11|Dell Products L.P.|Information Handling System Remote Desktop Protocol Selection|
KR101946862B1|2017-06-08|2019-04-29|필라웨어|사용자 인사 정보에 기반한 가상 데스크탑/가상 어플리케이션 환경 관리 시스템|
US10430227B2|2018-01-09|2019-10-01|Microsoft Technology Licensing, Llc|Fast instantiation of virtual machines in distributed computing systems|
US10693945B2|2018-01-24|2020-06-23|Vmware, Inc.|File and folder redirection for virtual desktops via image scanning|
CN108306969A|2018-02-02|2018-07-20|西安雷风电子科技有限公司|一种idv云桌面的智能接入系统及智能接入方法|
US10664323B2|2018-03-07|2020-05-26|Microsoft Technology Licensing, Llc|Live migration of virtual machines in distributed computing systems|
PT115089A|2018-10-19|2020-04-20|Eurotux Informatica S A|Sistema e método para comutação gradual de ambiente de computação entre computador local e computador remoto.|
US10809935B2|2018-12-17|2020-10-20|Vmware, Inc.|System and method for migrating tree structures with virtual disks between computing environments|
法律状态:
2012-10-03| A131| Notification of reasons for refusal|Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121002 |
2012-10-05| A977| Report on retrieval|Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121003 |
2012-12-27| A521| Written amendment|Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121226 |
2013-01-22| TRDD| Decision of grant or rejection written|
2013-01-30| A01| Written decision to grant a patent or to grant a registration (utility model)|Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130129 |
2013-02-14| A61| First payment of annual fees (during grant procedure)|Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130206 |
2013-02-15| R150| Certificate of patent or registration of utility model|Ref document number: 5198584 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
2013-02-15| FPAY| Renewal fee payment (event date is renewal date of database)|Free format text: PAYMENT UNTIL: 20160215 Year of fee payment: 3 |
2016-02-02| R250| Receipt of annual fees|Free format text: JAPANESE INTERMEDIATE CODE: R250 |
2017-02-07| R250| Receipt of annual fees|Free format text: JAPANESE INTERMEDIATE CODE: R250 |
2018-02-06| R250| Receipt of annual fees|Free format text: JAPANESE INTERMEDIATE CODE: R250 |
2019-02-05| R250| Receipt of annual fees|Free format text: JAPANESE INTERMEDIATE CODE: R250 |
2020-01-31| R250| Receipt of annual fees|Free format text: JAPANESE INTERMEDIATE CODE: R250 |
2021-01-29| R250| Receipt of annual fees|Free format text: JAPANESE INTERMEDIATE CODE: R250 |
2022-01-31| R250| Receipt of annual fees|Free format text: JAPANESE INTERMEDIATE CODE: R250 |
优先权:
申请号 | 申请日 | 专利标题
[返回顶部]